home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
64'er 1994 April
/
64er_Magazin_94-04_1994_Markt__Technik_de_Side_A.d64
/
imp.source v2
< prev
next >
Wrap
Text File
|
2022-10-26
|
12KB
|
757 lines
;---------------------------------------
;
; - I M P E R O I D V 2 -
;
; - by Hannes Sommer -
;
; - (c) Markt & Technik '94 -
;
;---------------------------------------
v = 53248
bord = 703
*= $8000
jmp title
cols .byte 0,0,0,0,0,0,0,0
.byte 0,0,0,0,0,0,0,0
.byte 0,9,8,10,15,7,1,1
.byte 1,1,13,3,14,4,6,0
.byte 0,0,0,0,0,0,0,0
.byte 0,0,0,0,0,0,0,0
;------------ F L I - Logo -------------
fli
lda #56
sta $d011
inc fly1+1
fly1 lda #0
lsr a
and #31
tay
ldx #0
fli0 lda cols,y
sta $50,x
iny
inx
cpx #15
bne fli0
lda #0
sta $5f
lda #49
fli1 cmp $d012
bcs fli1
ldx #3
fli2 dex
bne fli2
lda #63
ldx #8
sta $d011
stx $d018
lda $5f
sta $d020
sta $d021
lda #56
ldx #24
sta $d011
stx $d018
lda $5f
sta $d020
sta $d021
lda #57
ldx #40
sta $d011
stx $d018
lda $5f
sta $d020
sta $d021
lda #58
ldx #56
sta $d011
stx $d018
lda $5f
sta $d020
sta $d021
lda #59
ldx #72
sta $d011
stx $d018
lda $50
sta $d020
sta $d021
lda #60
ldx #88
sta $d011
stx $d018
lda $51
sta $d020
sta $d021
lda #61
ldx #104
sta $d011
stx $d018
lda $52
sta $d020
sta $d021
lda #62
ldx #120
sta $d011
stx $d018
lda $50
sta $d020
sta $d021
lda #63 ;Line #2
ldx #8
sta $d011
stx $d018
lda $51
sta $d020
sta $d021
lda #56
ldx #24
sta $d011
stx $d018
lda $52
sta $d020
sta $d021
lda #57
ldx #40
sta $d011
stx $d018
lda $53
sta $d020
sta $d021
lda #58
ldx #56
sta $d011
stx $d018
lda $50
sta $d020
sta $d021
lda #59
ldx #72
sta $d011
stx $d018
lda $51
sta $d020
sta $d021
lda #60
ldx #88
sta $d011
stx $d018
lda $52
sta $d020
sta $d021
lda #61
ldx #104
sta $d011
stx $d018
lda $53
sta $d020
sta $d021
lda #62
ldx #120
sta $d011
stx $d018
lda $54
sta $d020
sta $d021
lda #63 ;Line #3
ldx #8
sta $d011
stx $d018
lda $55
sta $d020
sta $d021
lda #56
ldx #24
sta $d011
stx $d018
lda $50
sta $d020
sta $d021
lda #57
ldx #40
sta $d011
stx $d018
lda $51
sta $d020
sta $d021
lda #58
ldx #56
sta $d011
stx $d018
lda $52
sta $d020
sta $d021
lda #59
ldx #72
sta $d011
stx $d018
lda $53
sta $d020
sta $d021
lda #60
ldx #88
sta $d011
stx $d018
lda $54
sta $d020
sta $d021
lda #61
ldx #104
sta $d011
stx $d018
lda $55
sta $d020
sta $d021
lda #62
ldx #120
sta $d011
stx $d018
lda $56
sta $d020
sta $d021
lda #63 ;Line #4
ldx #8
sta $d011
stx $d018
lda $57
sta $d020
sta $d021
lda #56
ldx #24
sta $d011
stx $d018
lda $50
sta $d020
sta $d021
lda #57
ldx #40
sta $d011
stx $d018
lda $51
sta $d020
sta $d021
lda #58
ldx #56
sta $d011
stx $d018
lda $52
sta $d020
sta $d021
lda #59
ldx #72
sta $d011
stx $d018
lda $53
sta $d020
sta $d021
lda #60
ldx #88
sta $d011
stx $d018
lda $54
sta $d020
sta $d021
lda #61
ldx #104
sta $d011
stx $d018
lda $55
sta $d020
sta $d021
lda #62
ldx #120
sta $d011
stx $d018
lda $56
sta $d020
sta $d021
lda #63 ;Line #5
ldx #8
sta $d011
stx $d018
lda $57
sta $d020
sta $d021
lda #56
ldx #24
sta $d011
stx $d018
lda $58
sta $d020
sta $d021
lda #57
ldx #40
sta $d011
stx $d018
lda $59
sta $d020
sta $d021
lda #58
ldx #56
sta $d011
stx $d018
lda $52
sta $d020
sta $d021
lda #59
ldx #72
sta $d011
stx $d018
lda $53
sta $d020
sta $d021
lda #60
ldx #88
sta $d011
stx $d018
lda $54
sta $d020
sta $d021
lda #61
ldx #104
sta $d011
stx $d018
lda $55
sta $d020
sta $d021
lda #62
ldx #120
sta $d011
stx $d018
lda $56
sta $d020
sta $d021
lda #63 ;Line #6
ldx #8
sta $d011
stx $d018
lda $57
sta $d020
sta $d021
lda #56
ldx #24
sta $d011
stx $d018
lda $58
sta $d020
sta $d021
lda #57
ldx #40
sta $d011
stx $d018
lda $59
sta $d020
sta $d021
lda #58
ldx #56
sta $d011
stx $d018
lda $54
sta $d020
sta $d021
lda #59
ldx #72
sta $d011
stx $d018
lda $55
sta $d020
sta $d021
lda #60
ldx #88
sta $d011
stx $d018
lda $56
sta $d020
sta $d021
lda #61
ldx #104
sta $d011
stx $d018
lda $57
sta $d020
sta $d021
lda #62
ldx #120
sta $d011
stx $d018
lda $58
sta $d020
sta $d021
lda #63 ;Line #7
ldx #8
sta $d011
stx $d018
lda $59
sta $d020
sta $d021
lda #56
ldx #24
sta $d011
stx $d018
lda $56
sta $d020
sta $d021
lda #57
ldx #40
sta $d011
stx $d018
lda $57
sta $d020
sta $d021
lda #58
ldx #56
sta $d011
stx $d018
lda $58
sta $d020
sta $d021
lda #59
ldx #72
sta $d011
stx $d018
lda $59
sta $d020
sta $d021
lda #60
ldx #88
sta $d011
stx $d018
lda $57
sta $d020
sta $d021
lda #61
ldx #104
sta $d011
stx $d018
lda $58
sta $d020
sta $d021
lda #62
ldx #120
sta $d011
stx $d018
lda $59
sta $d020
sta $d021
lda #63
ldx #12
sta $d011
stx $d018
lda #0
sta $d020
sta $d021
lda #88
sta $d011
rts
;--------------- G A M E ---------------
game
lda #64
sta $d011
sta $d020
sta $d021
ldx #0
in1 lda #255
sta $4000,x
lda #0
sta $d800,x
sta $d900,x
sta $da00,x
sta $db00,x
dex
bne in1
lda #$44 ;Aufbau des
sta in6+2 ;Sterne-Himmels
ldx #0
stx in6+1
ldy #0
in5 tya
clc
adc starl,x
and #31
in6 sta $4400,y
iny
cpy #40
bne in5
lda in6+1
clc
adc #40
sta in6+1
bcc in7
inc in6+2
in7 inx
cpx #25
bne in5-2
lda #0
sta end+1
sei ;Irq+Grafik-Modi
lda #<irq
sta $fffe
lda #>irq
sta $ffff
lda #129
sta $d01a
lda #250
sta $d012
lda #27
sta $d011
lda #198
sta $dd00
lda #16
sta $d018
lda #200
sta $d016
cli
s1
end lda #0 ;Ende ?
beq noend
lda #64
sta $d011
sta $d021
sei
jmp title
noend
jmp s1
starl .byte 0,5,20,13,28
.byte 14,3,9,23,18
.byte 4,10,21,8,27
.byte 11,2,26,15,6
.byte 24,1,16,29,7
nmi inc end+1 ;*** NMI ***
rti
irq pha ;*** IRQ ***
txa
pha
tya
pha
lda $d019
sta $d019
bmi t1
lda $dc0d
cli
irqend pla
tay
pla
tax
pla
rti
t1
inc bord
ldx #15
t5 lda starp,x ;Star-moving!
and #248
sta t6+1
txa
and #7
tay
lda #255
t6 sta $4000,y
lda starp,x
sec
sbc stars,x
sta starp,x
and #248
sta t7+1
lda starp,x
and #7
sta tt7+1
tt7 lda und
t7 sta $4000,y
dex
bpl t5
inc t8+1 ;Star-Flashing!
t8 lda #0
lsr a
and #15
tax
lda grey,x
sta $d021
lda #0
sta bord
jmp irqend
starp .byte 220,10,140,200
.byte 160,180,100,50
.byte 40,90,80,240
.byte 150,110,134,215
stars .byte 1,2,1,3,1,4,1,3
.byte 2,1,4,1,1,1,3,1
grey .byte 9,11,12,12,15,3,7,1
.byte 1,7,3,15,12,12,11,9
;-------------- T I T L E --------------
title
sei
lda #0
sta $d020
sta $d021
sta $d01a
sta $d011
sta v+27
sta v+23
sta v+29
sta fly1+1
ldx #16
ti0 sta $d000,x
sta $d400,x
sta $d408,x
dex
bpl ti0
ldx #0
lda #$35
sta 1
ti1 lda $bc00,x
sta $d800,x
lda $bc18,x
sta $d818,x
lda #0
sta $d918,x
lda #9
sta $d940,x
sta $da40,x
sta $db00,x
dex
bne ti1
lda #<nmi
sta $fffa
sta $fffe
lda #>nmi
sta $fffb
sta $ffff
lda #196
sta 56576
lda #27
sta $d011
lda #224
sta 56322
ti20 lda $d011
bmi ti20
sei
lda #120
sta $d011
lda #216
sta 53270
lda #24
sta 53272
jsr fli ;** FLI-Logo! **
lda #24 ;Text-Mode
sta $d011
ldx #0 ;Colour-changing...
ti25 lda tiwait,x
cmp $d012
bcs ti25
lda ticol1,x
sta $d022
lda ticol2,x
sta $d023
inx
cpx #4
bne ti25
ti26 lda $dc00 ;Joy-Button ?
and #16
bne ti28
jmp game
ti28
ti99 lda $d011
bpl ti99
jmp ti20
tiwait .byte 100,134,158,188
ticol1 .byte 9,6,9,4
ticol2 .byte 5,14,10,12
*= $9f00
und .byte 127,191,223,239
.byte 247,251,253,254